var rowIndex = "%^%%%%";//开工登记表的下标（用于改变选中行样式）
var page;//开工登记表的页码
var _index = -1;//开工表的下标（用于表勾选）
var flag = false;//区分状态
var _id;
var fWorker = "$#^$%%^$%^$%";

/*
 * @Description: 操作事件
 * @param :
 */
window.operateEvents= {
	'click .print' : function(e, value, row, index) {//打印
		url=pathUrl("WR?endId="+row.endId);
		window.open(url);
	}
};

/*
 * @Description: 预加载
 * @param : 
 */
$(function() {
	resizeDeskHight();
	$("#fWorker").focus();
	
	var time = {
		onClose : false,
		format : 'YYYY-MM-DD',
		donefun : function(obj) {
			// end.minDate = obj.val; // 开始日选好后，重置结束日的最小日期
			initStratTable();
		}
	}
	jeDate('#fStartQcTime',time);
	jeDate('#fEndQcTime',time);
	getDate();
	getLastDate();
	initStratTable();
});
/*
 * @Description: 获取默认时间为上月26号
 * @param :  
 */
function getLastDate(){
	var date = new Date; 
    var year = date.getFullYear();
    var month = date.getMonth();
    if(month == 0){
         year = year - 1;
         month = 12; 
    }
	if(month < 10){
		month = '0' + month;
	}
	$("#fStartQcTime").val(year+'-'+month+'-26');
}
/*
 * @Description: 获取默认时间为本月25号
 * @param :  
 */
function getDate(){
	var date = new Date; 
    var year = date.getFullYear();
    var month = date.getMonth() + 1;
	if(month < 10){
		month = '0' + month;
	}
	$("#fEndQcTime").val(year+'-'+month+'-25');
}
/*
 * @Description: 初始化开工记录表 
 * @param :  
 */
function initStratTable() {
	$('#stratTable').bootstrapTable('destroy').bootstrapTable({
		url : pathUrl("tz/workTZList.action"),
		height : $(window).height()*0.8,//行高
		method : "POST",
		//striped : true,
		cache : false,
		sidePagination : "server", // 分页方式：client客户端分页，server服务端分页（*）
		pagination : true,
		pageNumber : 1,
		pageSize : 15,
		pageList : [ 15, 30, 60, 100, 'ALL' ],
		showFooter: true,
		rowStyle : function(row, index) {
			var classes = [ 'success' ];
			if (index == rowIndex) {
				return {
					classes : classes[0]
				};
			}
			return {};
		},
		queryParams : function(params) {
			var data = {};
			var orderBy = params.sort + " " + params.order;      //排序列名
			if(params.sort==undefined){
				orderBy = "fEndDate" + " " + params.order;
			}
			if(fWorker.substring(0,2) == "PG" || fWorker.substring(0,3) == "MPG"){
				data.fCode = fWorker;
			}else{
				data.fWorker = fWorker;
			}
			data.offset = params.offset +1;
			data.row = params.limit;
			data.fStartQcTime = $("#fStartQcTime").val();
			data.fEndQcTime = $("#fEndQcTime").val();
			data.orderBy = orderBy;//排序：要排序字段 + 排序规则
//			console.log(data)
			return data;
		},
		dataType : 'JSON',
		uniqueId : "id",
		columns : [ 
			{
				field : 'operate',
				align : 'left',
				valign: 'middle',
				title : '操作',
				formatter : function(value,row,index){
						return '<button type="button" class="btn btn-default print" style="font-size:24px;margin-right:5px;">打印</button>';
				},
				events : operateEvents,
				edit:false,
				showSearch:false
			},{
			field : 'fBillNo',
			align : 'left',
			valign: 'middle',
//			sortable : true,
			title : '任务单号',
			footerFormatter: function (value) {
                return '<span style="font-size: 17px;font-weight:700;">合计</span>';
			}
		}, {
			field : 'fCode',
			align : 'left',
			valign: 'middle',
//			sortable : true,
			title : '派工单号'
		}/*, {
			field : 'fNumber',
			align : 'left',
			valign: 'middle',
//			sortable : true,
			title : '物料代码'
		}*/,{
			field : 'fName',
			align : 'left',
			valign: 'middle',
//			sortable : true,
			title : '物料名称'
		},{
			field : 'fModel',
			align : 'left',
			valign: 'middle',
//			sortable : true,
			title : '规格型号'
		}, {
			field : 'fPieceRate',
			align : 'left',
			valign: 'middle',
			title : '定</br>额'
		}, {
			field : 'fTargetQty',
			align : 'left',
			valign: 'middle',
//			sortable : true,
			title : '派工</br>数',
			footerFormatter: function (value) {
                var count = 0;
                for (var i in value) {
                	if(value[i].fTargetQty !=null){
                        count += value[i].fTargetQty;
                    }
                }
                return count;
			}
		}, {
			field : 'fQty',
			align : 'left',
			valign: 'middle',
			title : '报工</br>数',
			footerFormatter: function (value) {
                var count = 0;
                for (var i in value) {
                	if(value[i].fQty !=null){
                        count += value[i].fQty;
                    }
                }
                return count;
			}
		} , {
			field : 'fQcPassQty',
			align : 'left',
			valign: 'middle',
			title : '质检</br>良品',
			sortable : true,
			visible : true,
			width: '10%',	
			footerFormatter: function (value) {
		        var count = 0;
		        for (var i in value) {
		        	if(value[i].fQcPassQty != null){
		                count += value[i].fQcPassQty;
		            }
		        }
		        return count.toFixed();
			}	
		}, {
			field : 'fgz',
			align : 'left',
			valign: 'middle',
			title : '工时',
			visible : true,
			sortable : true,
			width: '10%',	
			footerFormatter: function (value) {
		        var count = 0;
		        for (var i in value) {
		        	if(value[i].fgz != null){
		                count += value[i].fgz;
		            }
		        }
		        return count.toFixed();
			}	
		}, {
			field : 'fQcOthQty',
			align : 'left',
			valign: 'middle',
			title : '质检</br>次品',
			sortable : true,
			visible : true,
			width: '10%',	
			footerFormatter: function (value) {
		        var count = 0;
		        for (var i in value) {
		        	console.log(value[i].fQcOthQty);
		        	if(value[i].fQcOthQty !=null){
		                count += value[i].fQcOthQty;
		               // console.log(count);
		            }
		        }
		        return count.toFixed();
			}	
		}, 
		{
			field : 'fQcScrapQty',
			align : 'left',
			valign: 'middle',
			title : '质检</br>工废',
			sortable : true,
			visible : true,
			width: '10%',	
			footerFormatter: function (value) {
		        var count = 0;
		        for (var i in value) {
		        	if(value[i].fQcScrapQty !=null){
		                count += value[i].fQcScrapQty;
		            }
		        }
		        return count.toFixed();
			}
		},{
			field : 'fQcForitemQty',
			align : 'left',
			valign: 'middle',
			title : '质检</br>料废',
			sortable : true,
			visible : true,
			width: '10%',	
			footerFormatter: function (value) {
			    var count = 0;
			    for (var i in value) {
			    	if(value[i].fQcForitemQty !=null){
			        count += parseFloat(value[i].fQcForitemQty);
			    	}
			    }
			    return count.toFixed();
			}
		},{
			field : 'fPassQty',
			align : 'left',
			valign: 'middle',
			title : '良品',
			footerFormatter: function (value) {
                var count = 0;
                for (var i in value) {
                	if(value[i].fPassQty !=null){
                        count += value[i].fPassQty;
                    }
                }
                return count;
			}
		}, {
			field : 'fScrapQty',
			align : 'left',
			valign: 'middle',
			title : '工废',
			footerFormatter: function (value) {
                var count = 0;
                for (var i in value) {
                	if(value[i].fScrapQty !=null){
                        count += value[i].fScrapQty;
                    }
                }
                return count;
			}
		}, {
			field : 'fForitemQty',
			align : 'left',
			valign: 'middle',
			title : '料废',
			footerFormatter: function (value) {
                var count = 0;
                for (var i in value) {
                	if(value[i].fForitemQty !=null){
                        count += value[i].fForitemQty;
                    }
                }
                return count;
			}
		}, {
			field : 'fReworkQty',
			align : 'left',
			valign: 'middle',
			title : '返修',
			footerFormatter: function (value) {
                var count = 0;
                for (var i in value) {
                	if(value[i].fReworkQty !=null){
                        count += value[i].fReworkQty;
                    }
                }
                return count;
			}
		}, {
			field : 'fOthQty',
			align : 'left',
			valign: 'middle',
			title : '次品',
			footerFormatter: function (value) {
                var count = 0;
                for (var i in value) {
                	if(value[i].fOthQty !=null){
                        count += value[i].fOthQty;
                    }
                }
                return count;
			}
		}, {
			field : 'fDiscountPieceRate',
			align : 'left',
			valign: 'middle',
			title : '工种</br>折扣</br>(%)'
		}, {
			field : 'fStartDate',
			align : 'left',
			valign: 'middle',
			title : '开工时间',
			formatter : timeFormatter
		}, {
			field : 'fEndDate',
			align : 'left',
			valign: 'middle',
			title : '完工时间',
//			sortable : true,
			formatter : timeFormatter
		}, {
			field : 'fQcDate',
			align : 'left',
			valign: 'middle',
			title : '质检时间',
//			sortable : true,
			formatter : timeFormatter
		}, {
			field : 'fWorkerName',
			align : 'left',
			valign: 'middle',
			title : '员工',
		}, {
			field : 'fOperSN',
			align : 'left',
			valign: 'middle',
//			sortable : true,
			title : '工</br>序</br>号'
		}, {
			field : 'fOper',
			align : 'left',
			valign: 'middle',
//			sortable : true,
			title : '工序</br>名称'
		}, {
			field : 'fNote',
			align : 'left',
			valign: 'middle',
			title : '加工说明',
			formatter : function(value,row,index){
				var str = "";
				if(value != null){
					str = value.replace(/[^\x00-\xff]/g,"$&\x01").replace(/.{30}\x01?/g,"$&<br>").replace(/\x01/g,"");
				}
				return str;
			}
		}/*, {
			field : 'fWorkCenter',
			align : 'left',
			valign: 'middle',
//			sortable : true,
			title : '工作中心'
		}, {
			field : 'fMachine',
			align : 'left',
			valign: 'middle',
			title : '设备名称'
		}, {
			field : 'upfNote',
			align : 'left',
			valign: 'middle',
			title : '上道工序加工说明',
			formatter : function(value,row,index){
				var str = "";
				if(value != null){
					str = value.replace(/[^\x00-\xff]/g,"$&\x01").replace(/.{30}\x01?/g,"$&<br>").replace(/\x01/g,"");
				}
				return str;
			}
		}, {
			field : 'nextfNote',
			align : 'left',
			valign: 'middle',
			title : '下道工序加工说明',
			formatter : function(value,row,index){
				var str = "";
				if(value != null){
					str = value.replace(/[^\x00-\xff]/g,"$&\x01").replace(/.{30}\x01?/g,"$&<br>").replace(/\x01/g,"");
				}
				return str;
			}
		}*/],
		onClickRow: function (row,$element) {
//			console.log(row)
			$('.success').removeClass('success');// 去除之前选中的行的，选中样式
			$($element).addClass('success');// 添加当前选中的 success样式用于区别
			index = $element.data('index');
			rowIndex = index;
			_index = index;
			page = $('.pagination .active').find("a").eq(0).text();
		},
		onPageChange : function(number, size) {
			if (page == number) {
				rowIndex = index;
			} else {
				$('.success').removeClass('success');
				rowIndex = "%^%%%%";
			}
		},
		onLoadSuccess : function(data){
			$("#fWorker").val("");
			$("#fWorker").focus();
		}
	});
}
/*
 * @Description: 重置按钮点击事件
 * @param :
 */
$("#resetting").click(function(){
	fWorker = "$#^$%%^$%^$%";
	getDate();
	getLastDate();
	initStratTable();
	$('.success').removeClass('success');
	rowIndex = "%^%%%%";
});

var stime,etime;
$("#fWorker").keydown(function(e){
	stime = 0;
	stime = new Date().getTime();
});

$("#fWorker").keyup(function(e){
    etime = 0
	etime = new Date().getTime();
	//当输入第二位时判断两次输入的间隔，判断是否为手动输入，间隔过长清空值
    if(Math.abs(etime - stime) > 45){
	   	$(this).val('');
    }
});

/*
 * @Description: 输入操作工卡号回车事件
 * @param :
 */
$("#fWorker").keypress(function(event){
	if(event.keyCode == "13"){
		fWorker = $("#fWorker").val();
		if(fWorker == ""){
			$(".clean-c").val("");
			fWorker = "$#^$%%^$%^$%";
		}
		initStratTable();
		$('.success').removeClass('success');
		rowIndex = "%^%%%%";
	}
});